<?php

/* Guarda las respuestas de la practica */
require_once '../funciones/funciones.php';
//require_once '../funciones/validaciones.php';
$con = new MySQL();
//$respNivel = "";
//$termina      = $_REQUEST["siTermina"];
$evalId = $_REQUEST["evalId"];
$transa = $_REQUEST["transa"];
$participante = $_SESSION["partId"];
$numeroPregunta = $_REQUEST["numPreg"];
$retorna = array();

switch ($_REQUEST["tipo"]) {
    case "T": //la pregunta es de tipo teorica
        $sql = "select * from distractores where distraId = '{$_REQUEST["resp"]}' and pregId = '{$_REQUEST["pregId"]}'";
        $result = $con->consulta($sql);
        $result = $con->unaFila($result);
        $sql = "insert into evaluacionesypruebasdet(evaldetFec,pregId,distraId,evalId,evaldetResultado) values(";
        $sql .= "now(),'{$_REQUEST["pregId"]}','{$_REQUEST["resp"]}','$evalId','{$result["distraClave"]}')";
        $result = $con->consulta($sql);
        break;
    case "P": //la pregunta es de tipo practica
        $sql = "insert into evaluacionesypruebasdet(evaldetFec,pregId,evalId,evaldetResultado) values(";
        $sql .= "now(),'{$_REQUEST["pregId"]}','$evalId','{$_REQUEST["respCorrecta"]}')";
        $result = $con->consulta($sql);
        break;
}
if ($numeroPregunta == 5){ //se ha llegado al maximo
    $subtemaId = $_SESSION["subtemaId"];
    /*********CALIFICA********** */
    //optiene total malas
    $sql = "select count(evaldetId) as malas from evaluacionesypruebasdet where evalId = '$evalId' and evaldetResultado = '0'";
    $result = $con->consulta($sql);
    $totMalas = mysql_result($result, 0, "malas");
    //optiene total Buenas
    $sql = "select count(evaldetId) as buenas from evaluacionesypruebasdet where evalId = '$evalId' and evaldetResultado = '1'";
    $result = $con->consulta($sql);
    $totBuenas = mysql_result($result, 0, "buenas");
    $valorPorNota = 5 / ($totBuenas + $totMalas);
    $nota = $valorPorNota * $totBuenas;
    $sql = "update evaluacionesypruebas set evalCalificacion = '$nota' where evalId = '$evalId'";
    $con->consulta($sql);
    /*********FIN CALIFICA********** */
    $temaId = "";
//    echo $nota;
    /* Si ha superado la evaluacion entonces aumenta de tema */
    if ($nota > 3.5) {
        $sql = "select tm.temaId,subtms.subtemaId,nv.niveId from temas tm
            inner join subtemas subtms on subtms.temaId = tm.temaId
            inner join niveles nv on nv.temaId = tm.temaId
            where tm.temaId > (select tms.temaOrden from subtemas subt inner join temas tms on tms.temaId = subt.temaId where subt.subtemaId = '$subtemaId')
            order by tm.temaOrden,nv.nivelOrden,subtms.subtemaOrden asc limit 1";
        $result = $con->consulta($sql);
        if ($con->numeroFilas($result) > 0) {
            $datos = $con->unaFila($result);
//            echo $sql;
            $_SESSION['niveId']         = $datos["niveId"];
            $_SESSION['subtemaId']      = $datos["subtemaId"];
            $sql = "update participantes set 
                `subtemaId` = '{$datos["subtemaId"]}',
                niveId = '{$datos["niveId"]}' where `partId` = '$participante'";
//                exit($sql);
            $con->consulta($sql);
            $temaId = $datos["temaId"];
        } else { //Ha terminado de usar el sistema
            $temaId = -1;
        }
    } //fin if ($nota > 3.5) {
    $retorna["siguiente"] = -1;
    $retorna["temaId"] = $temaId;
    echo json_encode($retorna);
} else { //aun hay preguntas que responder
    $retorna["siguiente"] = $numeroPregunta + 1;
    echo json_encode($retorna);
}
?>